package com.ruoyi.rsikManage.MonitorPoint.domain;

import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.ruoyi.common.annotation.Excel;
import com.ruoyi.common.core.domain.BaseEntity;

/**
 * 设备对象 t_monitor_point
 *
 * @author sxygsj
 * @date 2024-11-29
 */
@Data
@AllArgsConstructor
@NoArgsConstructor
public class TMonitorPoint extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** 唯一id */
    private String id;

    /** 通道国标id */
    private String apeId;

    /** 通道序号 */
    @Excel(name = "通道序号")
    private String idx;

    /** 资源类型 */
    @Excel(name = "资源类型")
    private String resourceType;

    /** 通道子类型 */
    @Excel(name = "通道子类型")
    private String subType;

    /** 煤矿编码 */
    @Excel(name = "煤矿编码")
    private Long unitCode;

    /** 煤矿编码 */
    @Excel(name = "煤矿编码")
    private String unitName;

    /** 通道名称 */
    @Excel(name = "通道名称")
    private String name;

    /** 摄像机类型 */
    @Excel(name = "摄像机类型")
    private String model;

    /** 所属设备id */
    @Excel(name = "所属设备id")
    private String ownerApsId;

    /** 所属设备名称 */
    @Excel(name = "所属设备名称")
    private String ownerApsName;

    /** 所属设备IP */
    @Excel(name = "所属设备IP")
    private String ownerApsIp;

    /** 在线状态 */
    @Excel(name = "在线状态")
    private String isOnline;

    /** 掉线标志 */
    @Excel(name = "掉线标志")
    private Integer dropLineFlag;

    /** 在线或离线的持续时间 */
    @Excel(name = "在线或离线的持续时间")
    private Long durationOfOnlineOrOffline;

    /** 是否以及发送了监控点离线报警 */
    @Excel(name = "是否以及发送了监控点离线报警")
    private String isOfflineAlarmBeenSent;

    /** 是否启用 */
    @Excel(name = "是否启用")
    private String isEnabled;

    /** 组织id */
    @Excel(name = "组织id")
    private String orgIndex;

    /** 组织名称 */
    @Excel(name = "组织名称")
    private String orgName;

    /** $column.columnComment */
    @Excel(name = "${comment}", readConverterExp = "$column.readConverterExp()")
    private String iconName;

    /** $column.columnComment */
    @Excel(name = "${comment}", readConverterExp = "$column.readConverterExp()")
    private String coordinateX;

    /** $column.columnComment */
    @Excel(name = "${comment}", readConverterExp = "$column.readConverterExp()")
    private String coordinateY;

    /** 行政区域码 */
    @Excel(name = "行政区域码")
    private String placeCode;

    /** 安装点位 */
    @Excel(name = "安装点位")
    private String installationPlace;

    /** 安装点位编码 */
    @Excel(name = "安装点位编码")
    private String installationPlaceCode;

    /** 设备经度，WGS84坐标系 */
    @Excel(name = "设备经度，WGS84坐标系")
    private Long longitude;

    /** 设备纬度，WGS84坐标系 */
    @Excel(name = "设备纬度，WGS84坐标系")
    private Long latitude;

    /** 设备海拔，WGS84坐标系 */
    @Excel(name = "设备海拔，WGS84坐标系")
    private Long elevation;

    /** 最大分割数 */
    @Excel(name = "最大分割数")
    private Long maxDivision;

    /** 解码模式 */
    @Excel(name = "解码模式")
    private String decodeMode;

    /** 布防类型 */
    @Excel(name = "布防类型")
    private String defenceType;

    /** 布防状态 */
    @Excel(name = "布防状态")
    private String defenceStatus;

    /** 传感器类型 */
    @Excel(name = "传感器类型")
    private String sensorType;

    /** 报警等级 */
    @Excel(name = "报警等级")
    private String alarmLevel;

    /** 创建时间 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "创建时间", width = 30, dateFormat = "yyyy-MM-dd")
    private Date createDate;

    /** 修改时间 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "修改时间", width = 30, dateFormat = "yyyy-MM-dd")
    private Date updateDate;

    /** 删除时间 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "删除时间", width = 30, dateFormat = "yyyy-MM-dd")
    private Date delDate;

    /** 删除人 */
    @Excel(name = "删除人")
    private String delBy;

    /** 删除标志 */
    @Excel(name = "删除标志")
    private Integer delFlag;

    /** 实时更新时间 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "实时更新时间", width = 30, dateFormat = "yyyy-MM-dd")
    private Date realUpdateTime;

    /** 3D坐标X */
    @Excel(name = "3D坐标X")
    private String coordinate3dX;

    /** 3D坐标Y */
    @Excel(name = "3D坐标Y")
    private String coordinate3dY;

    /** 3D坐标Z */
    @Excel(name = "3D坐标Z")
    private String coordinate3dZ;

    /** 监控点离线超过这个分钟数就触发离线报警 */
    @Excel(name = "监控点离线超过这个分钟数就触发离线报警")
    private Long offlineAlarmSettingMinutes;

    /** 离线告警开关 */
    @Excel(name = "离线告警开关")
    private Long offlineSwitch;

    /** 监测周期内的持续时长 */
    @Excel(name = "监测周期内的持续时长")
    private Long cycleDuration;




}
